public class practice {
    class Solution {
        public int[] searchRange(int[] nums, int target) {
            int[] ret=new int[2];
            ret[0]=ret[1]=-1;
            if(nums.length==0){
                return ret;
            }
            int left=0,right=nums.length-1;
            //寻找左端点
            while(left<right){
                int mid=left+(right-left)/2;
                if(nums[mid]<target){
                    left=mid+1;
                }else{
                    right=mid;
                }
            }
            if(nums[left]!=target){
                return ret;
            }
            ret[0]=left;
            right=nums.length-1;
            //寻找右端点
            while(left<right){
                int mid=left+(right-left+1)/2;
                if(nums[mid]<=target){
                    left=mid;
                }else{
                    right=mid-1;
                }
            }
            if(nums[right]!=target){
                ret[0]=-1;
                return ret;
            }
            ret[1]=right;
            return ret;
        }
    }
}
